package com.vviton.zyhj.common.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.vviton.zyhj.common.entity.TYyxtDdglDhjlb;
import com.vviton.zyhj.common.utils.page.Page;
import com.vviton.zyhj.common.view.ViewDdcx;
import com.vviton.zyhj.common.view.ViewDhjlb;

/**
 * 
 * ClassName: TYyxtDdglDhjlbMapper <br/> 
 * Function: 兑换记录表Dao. <br/>
 * Date: 2016年11月15日 上午9:51:19 <br/>
 *
 * @author nifang
 * @version 1.0
 * @since JDK 1.7
 */
public interface TYyxtDdglDhjlbMapper {

    /**
     * 
     * insertDhjlb,(新增兑换记录). <br/>
     * Author: nifang <br/>
     * Create Date: 2016年11月15日 <br/>
     * ===============================================================<br/>
     * Modifier: nifang <br/>
     * Modify Date: 2016年11月15日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param dhjlb 兑换记录entity
     * @return 执行结果
     * @since JDK 1.7
     */
    int insertDhjlb(TYyxtDdglDhjlb dhjlb);
    
    /**
     * 
     * countWddhPagination,(分页查询我的兑换总数量). <br/>
     * Author: nifang <br/>
     * Create Date: 2016年11月15日 <br/>
     * ===============================================================<br/>
     * Modifier: nifang <br/>
     * Modify Date: 2016年11月15日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param page 分页对象
     * @return 总数量
     * @since JDK 1.7
     */
    int countWddhPagination(@Param("page") Page page);
    
    /**
     * 
     * getWddhPagination,(分页查询我的兑换列表信息). <br/>
     * Author: nifang <br/>
     * Create Date: 2016年11月15日 <br/>
     * ===============================================================<br/>
     * Modifier: nifang <br/>
     * Modify Date: 2016年11月15日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param page 分页对象
     * @return 我的兑换列表信息
     * @since JDK 1.7
     */
    List<ViewDhjlb> getWddhPagination(@Param("page") Page page);

    /**
     * 
     * getDdcxTotalPagination,为订单分页查询提供Page中所需要的total(总条数). <br/>
     * Author: Dengshiyu <br/>
     * Create Date: 2016年11月15日 <br/>
     * ===============================================================<br/>
     * Modifier: Dengshiyu <br/>
     * Modify Date: 2016年11月15日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param page 分页参数
     * @return 总条数
     * @since JDK 1.7
     */
    Integer getDdcxTotalPagination(@Param("page") Page page);

    /**
     * 
     * getDdcxPagination,分页查询订单. <br/>
     * Author: Dengshiyu <br/>
     * Create Date: 2016年11月15日 <br/>
     * ===============================================================<br/>
     * Modifier: Dengshiyu <br/>
     * Modify Date: 2016年11月15日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param page 分页参数
     * @return 订单明细
     * @since JDK 1.7
     */
    List<ViewDdcx> getDdcxPagination(@Param("page") Page page);

    /**
     * 
     * updateDdzt,修改订单状态. <br/>
     * Author: Dengshiyu <br/>
     * Create Date: 2016年11月18日 <br/>
     * ===============================================================<br/>
     * Modifier: Dengshiyu <br/>
     * Modify Date: 2016年11月18日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param dhjlb 兑换记录entity
     * @return 执行结果
     * @since JDK 1.7
     */
    Integer updateDdzt(TYyxtDdglDhjlb tYyxtDdglDhjlb);
    
    /**
     * 
     * countQzzfglDdmxPagination,(全站账房管理订单明细分页查询总数量). <br/>
     * Author: nifang <br/>
     * Create Date: 2016年11月18日 <br/>
     * ===============================================================<br/>
     * Modifier: nifang <br/>
     * Modify Date: 2016年11月18日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param page 分页参数
     * @return 总数量
     * @since JDK 1.7
     */
    int countQzzfglDdmxPagination(@Param("page") Page page);
    
    /**
     * 
     * getQzzfglDdmxPagination,(全站账房管理订单明细分页查询). <br/>
     * Author: nifang <br/>
     * Create Date: 2016年11月18日 <br/>
     * ===============================================================<br/>
     * Modifier: nifang <br/>
     * Modify Date: 2016年11月18日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param page 分页参数
     * @return 订单明细
     * @since JDK 1.7
     */
    List<TYyxtDdglDhjlb> getQzzfglDdmxPagination(@Param("page") Page page);

    /**
     * 
     * getDdxxById,根据Id获取订单信息. <br/>
     * Author: Dengshiyu <br/>
     * Create Date: 2016年11月21日 <br/>
     * ===============================================================<br/>
     * Modifier: Dengshiyu <br/>
     * Modify Date: 2016年11月21日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param id 订单id
     * @param ywy 业务域
     * @return 订单查询结果
     * @since JDK 1.7
     */
    ViewDdcx getDdxxById(@Param("id") String id, @Param("ywy")  String ywy);

    /**
     * 
     * getDdcxListByIds,根据订单id获取订单查询列表. <br/>
     * Author: Dengshiyu <br/>
     * Create Date: 2016年11月24日 <br/>
     * ===============================================================<br/>
     * Modifier: Dengshiyu <br/>
     * Modify Date: 2016年11月24日 <br/>
     * Modify Description:  <br/>
     * ===============================================================<br/>
     * @param ddids 订单id
     * @param ywy 业务域
     * @return 订单列表
     * @since JDK 1.7
     */
    List<ViewDdcx> getDdcxListByIds(@Param("ddids") String[] ddids, @Param("ywy") String ywy);

}